From 26f3c25a43fcfb6bc24017bff494ba34f70e0811 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Thu, 28 Feb 2008 13:40:30 +0000 Subject: [PATCH] x86 shadow: Audit tables and guest walk when we know they are consistent. From: Gianluca Guida Signed-off-by: Keir Fraser --- xen/arch/x86/mm/shadow/multi.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/mm/shadow/multi.c b/xen/arch/x86/mm/shadow/multi.c index 2c717123d1..de1d923701 100644 --- a/xen/arch/x86/mm/shadow/multi.c +++ b/xen/arch/x86/mm/shadow/multi.c @@ -2952,8 +2952,6 @@ static int sh_page_fault(struct vcpu *v, #endif /* (SHADOW_OPTIMIZATIONS & SHOPT_VIRTUAL_TLB) */ shadow_lock(d); - shadow_audit_tables(v); - sh_audit_gw(v, &gw); if ( gw_remove_write_accesses(v, va, &gw) ) { @@ -2972,6 +2970,9 @@ static int sh_page_fault(struct vcpu *v, return EXCRET_fault_fixed; } + shadow_audit_tables(v); + sh_audit_gw(v, &gw); + /* Make sure there is enough free shadow memory to build a chain of * shadow tables. (We never allocate a top-level shadow on this path, * only a 32b l1, pae l1, or 64b l3+2+1. Note that while -- 2.30.2